package com.jrx.anytxn.reporting.constant;

/**
 * 常量类
 * @author lbz
 * @date 2020/1/2
 */
public final class ReportingConstant {
    /**
     * 默认机构编号
     */
    public static final String DEFAULT_ORG_NUMBER = "0001";
    //表主键生成ID
    public static final String MR_LOAN_ACCOUNT_ID = "MrLoanAccountInfo";//贷款信息
    public static final String MR_REPAYMENT_PLAN_ID = "MrRepaymentPlan";//还款计划信息
    public static final String MR_CUSTOMER_INFO_ID = "MrCustomerInfo";//客户信息表
    public static final String MR_PAYMENT_LOG_ID = "MrPaymentLog";//还款流水

    //分期本金收取方式
    public static final String PRIN_CHARGE_OPTION_EPEI = "01"; //分期付款（等本等息）
    public static final String PRIN_CHARGE_OPTION_EPI = "02"; //等额本息
    public static final String PRIN_CHARGE_OPTION_EP = "03"; //等额本金
    public static final String PRIN_CHARGE_OPTION_MONTHLY_INTPAY = "06"; //按期付息，到期还本
    public static final String PRIN_CHARGE_OPTION_MI_YP = "08"; //按月付息，按年还本
    public static final String PRIN_CHARGE_OPTION_INTPAY = "09"; //随见随还 利随本清

    //业务种类
    public static final String BUSINESS_TYPE_LOAN =  "1";//贷款
    public static final String BUSINESS_TYPE_CARD =  "2";//信用卡
    //担保方式
    public static final String ASSURE_TYPE_00 = "00";//信用
    public static final String ASSURE_TYPE_10 = "10";//质押
    public static final String ASSURE_TYPE_20 = "20";//抵押
    public static final String ASSURE_TYPE_30 = "30";//保证
    public static final String ASSURE_TYPE_31 = "31";//单人保证
    public static final String ASSURE_TYPE_32 = "32";//多人保证
    public static final String ASSURE_TYPE_33 = "33";//多人分保
    public static final String ASSURE_TYPE_34 = "34";//联保/多人联保
    public static final String ASSURE_TYPE_40 = "40";//组合担保
    //合同性质
    public static final String CONTRACT_NATURE_1 = "1";//一般担保合同
    public static final String CONTRACT_NATURE_2 = "2";//最高额担保合同
    //贷款审批状态
    public static final String LOAN_APPROVAL_STATUS_0 = "0";//已录入
    public static final String LOAN_APPROVAL_STATUS_1 = "1";//已上传
    public static final String LOAN_APPROVAL_STATUS_2 = "2";//审批中
    public static final String LOAN_APPROVAL_STATUS_3 = "3";//审批通过
    public static final String LOAN_APPROVAL_STATUS_4 = "4";//已拒绝
    public static final String LOAN_APPROVAL_STATUS_5 = "5";//放款监督已确认
    public static final String LOAN_APPROVAL_STATUS_6 = "6";//已会计入账
    public static final String LOAN_APPROVAL_STATUS_7 = "7";//已撤销发放
    //放款途径
    public static final String PAY_MODE_1 = "1";//卡
    public static final String PAY_MODE_2 = "2";//存折
    //上浮方式
    public static final String PFLTUBTRATE_OPT_1 = "1";//上浮百分比
    public static final String PFLTUBTRATE_OPT_2 = "2";//固定值
    //计息基础（0-逾期本金 1-逾期本金+利息）
    public static final String ACCRUAL_BASIC_0 = "0";//逾期本金
    public static final String ACCRUAL_BASIC_1 = "1";//逾期本金+利息
    //单复利标识 0 否 1 是
    public static final String COMPOUND_INTEREST_0 = "0";//否
    public static final String COMPOUND_INTEREST_1 = "1";//是
    //划款方向
    public static final String PAY_DIRECT_0 = "0";//借款人还款账号
    public static final String PAY_DIRECT_1 = "1";//1-合作商
    public static final String PAY_DIRECT_2 = "2";//2-指定帐号
    public static final String PAY_DIRECT_3 = "3";//3-借款人其他账号
    //贷款结清类型
    public static final String CLOSE_TYPE_0 = "0";//0-未结清
    public static final String CLOSE_TYPE_1 = "1";//1-已结清
    //宽限类型
    public static final String DOG_TYPE_0 = "0";//0-无宽限
    public static final String DOG_TYPE_1 = "1";//1-按日方式
    public static final String DOG_TYPE_2 = "2";//2-宽限至月末
    //还款计划状态
    public static final String LOAN_PLAN_STATUS_0 = "0";//未抛账
    public static final String LOAN_PLAN_STATUS_1 = "1";//正常
    public static final String LOAN_PLAN_STATUS_2 = "2";//逾期
    public static final String LOAN_PLAN_STATUS_7 = "7";//提前结清
    public static final String LOAN_PLAN_STATUS_8 = "8";//正常结清
    public static final String LOAN_PLAN_STATUS_9 = "9";//取消
    //学历
    public static final String EDUCATION_10 = "10";//研究生
    public static final String EDUCATION_20 = "20";//大学本科
    public static final String EDUCATION_30 = "30";//大学专科和专科学校
    public static final String EDUCATION_40 = "40";//中等专业学校或中等技术学校
    public static final String EDUCATION_50 = "50";//技术学校
    public static final String EDUCATION_60 = "60";//高中
    public static final String EDUCATION_70 = "70";//初中
    public static final String EDUCATION_80 = "80";//小学
    public static final String EDUCATION_90 = "90";//文盲或半文盲
    public static final String EDUCATION_99 = "99";//未知
    //学位
    public static final String DEGREE_0 = "0";//其他
    public static final String DEGREE_1 = "1";//名誉博士
    public static final String DEGREE_2 = "2";//博士
    public static final String DEGREE_3 = "3";//硕士
    public static final String DEGREE_4 = "4";//学士
    public static final String DEGREE_9 = "9";//未知
    //还款分配类型
    public static final String PAYMENT_ALLOCATION_TYPE_08 = "08"; //还款交易账户
    public static final String PAYMENT_ALLOCATION_TYPE_09 = "09"; //还款交易子交易账户
    //交易码
    public static final String TXN_CODE_INST_PYMT = "P20050";//本金还款
    public static final String TXN_CODE_INST_PYMT_INTR = "P20150";//利息还款
    public static final String TXN_CODE_INST_PYMT_PEN_INTR = "P20151";//罚息还款
    public static final String TXN_CODE_INST_PYMT_FEE = "P20252";//分期费用还款
    public static final String TXN_CODE_INST_PREPAY_PYMT_FEE = "P20253";//提前还款手续费还款
    public static final String TXN_CODE_INST_PYMT_PAYOFF_FEE = "P20254";//提前结清手续费还款
    public static final String TXN_CODE_INST_COMPOUND_INTR = "P20152";//复利
    //放款款流水最终状态
    public static final String DISBURSEMENT_LOG_SUM_STATUS_S = "S"; //S 成功
    public static final String DISBURSEMENT_LOG_SUM_STATUS_F = "F"; //F 失败
    public static final String DISBURSEMENT_LOG_SUM_STATUS_D = "D"; // D 待发起放款
    public static final String DISBURSEMENT_LOG_SUM_STATUS_O = "O"; //O 已发起放款，放款状态未知，待查询

    //还款流水表最终状态
    public static final String PAYMENT_LOG_SUM_STATUS_S = "S"; //S 成功
    public static final String PAYMENT_LOG_SUM_STATUS_F = "F"; //F 失败
    public static final String PAYMENT_LOG_SUM_STATUS_T = "T"; //T 扣款成功，待分配
    public static final String PAYMENT_LOG_SUM_STATUS_D = "D"; // D 待发起扣款
    public static final String PAYMENT_LOG_SUM_STATUS_O = "O"; //O 已发起扣款，扣款状态未知，待查询
    public static final String PAYMENT_LOG_SUM_STATUS_P = "P"; //O 处理中 api接口调用返回

    //还款类型
    public static final String REPAYMENT_TYPE_PAY = "pay"; //正常还款
    public static final String REPAYMENT_TYPE_PREPAY = "prepay"; //提前还款
    public static final String REPAYMENT_TYPE_PREPAY_CURR = "prepayCurr"; //提前还当期
    public static final String REPAYMENT_TYPE_PRETERMINTION = "pretermination"; //提前结清
    public static final String REPAYMENT_TYPE_OVERDUE = "overdue"; //逾期还款
    public static final String REPAYMENT_TYPE_AUTO = "autoPymt"; //自动扣款
    public static final String REPAYMENT_TYPE_CMPS = "cmpspay"; //代偿
    public static final String REPAYMENT_TYPE_CRT = "crtpay"; //回购
    public static final String REPAYMENT_TYPE_STAGING = "loanStaging"; //账单分期
    public static final String REPAYMENT_TYPE_BILLOVERDUEPAY = "billOverduePay"; //账单逾期还款
    public static final String REPAYMENT_TYPE_BILLPAY = "billPay"; //账单正常还款
    public static final String REPAYMENT_TYPE_BILLPREPAYCURR = "billPrepayCurr"; //账单提前还当期
    public static final String REPAYMENT_TYPE_WAIVEAUTO = "waiveAutoPymt"; //贴息自动扣款
    public static final String REPAYMENT_TYPE_PAY_TERM = "payTerm"; //指定期次还款
    public static final String REPAYMENT_TYPE_ = "payTerm"; //指定期次还款

    //报送文件间隔
    public static final String separator = "|@|";

    //联盟文件间隔
    public static final String separator_union = ",";

    // 临商文件间隔
    public static final String SEPARATOR_LS = "$";

    // 临商二代征信文件间隔
    public static final String SEPARATOR_LS_SECOND = "|";

    // 临商文件前缀
    public static final String FILE_PRE_LS = "JLCLOUD";

    // 临商字段前缀
    public static final String FIELD_PRE_LS = "JLCLOUD";

    //文件类型
    public static final String REPORTING_FILE_TYPE_CUSTOMER = "customerInfo";
    public static final String REPORTING_FILE_TYPE_LOAN = "loan";
    public static final String REPORTING_FILE_TYPE_PAYMENT = "paymentLog";
    public static final String REPORTING_FILE_TYPE_PAYMENT_PLAN = "paymentPlan";
    public static final String REPORTING_FILE_TYPE_LIMIT = "customerLimit";
    public static final String REPORTING_FILE_TYPE_STAGING = "loanStaging";

    //累计账户类型
    public static final String INTEREST_ACCRUAL_TYPE_66 = "66"; // 利息累计账户
    public static final String INTEREST_ACCRUAL_TYPE_10 = "10"; // 罚息累计账户
    public static final String INTEREST_ACCRUAL_TYPE_20 = "20"; // 复利累计账户
    public static final String INTEREST_ACCRUAL_TYPE_70 = "70"; // 贴息利息累计账户


    //交易账户类型
    public static final String ACCOUNT_TYPE_06 = "06";// 分期/贷款扣账明细账户
    public static final String ACCOUNT_TYPE_03 = "03";//费用交易账户
    public static final String ACCOUNT_TYPE_04 = "04";//利息交易账户
    public static final String ACCOUNT_TYPE_05 = "05";//订单交易账户
    public static final String ACCOUNT_TYPE_11 = "11";//罚息交易账户
    public static final String ACCOUNT_TYPE_12 = "12";//复利交易账户
    public static final String ACCOUNT_TYPE_17 = "17";//贴息利息交易账户

    //交易账户状态
    public static final String ACCOUNT_STATUS_0 = "0";// 新建
    public static final String ACCOUNT_STATUS_1 = "1";//正常
    public static final String ACCOUNT_STATUS_2 = "2";//逾期
    public static final String ACCOUNT_STATUS_7 = "7";//提前结清
    public static final String ACCOUNT_STATUS_8 = "8";//正常结清
    public static final String ACCOUNT_STATUS_9 = "9";//取消
    public static final String ACCOUNT_STATUS_6 = "6";//转分期


    /**
     * 批次执行状态
     */
    public static final String BATCH_SATTUS_0 = "0";//待执行
    public static final String BATCH_SATTUS_1 = "1";//执行中
    public static final String BATCH_SATTUS_2 = "2";//执行完成

    public static final String CUTOVER_END = "cutoverEndJob";//日切结束

    //关系 01 配偶
    public static final String RELATION_01 = "01";

    //地址类型
    public static final String ADDRESS_TYPE_0 = "0";//户籍地址
    public static final String ADDRESS_TYPE_1 = "1";//家庭地址
    public static final String ADDRESS_TYPE_2 = "2";//通讯地址
    public static final String ADDRESS_TYPE_3 = "3";//单位地址
    public static final String ADDRESS_TYPE_4 = "4";//学校地址

    //省
    public static final String PROVINCE_TYPE_ID = "PROVINCE";
    //市
    public static final String CITY_TYPE_ID = "CITY";
    //区
    public static final String AREA_TYPE_ID = "AREA";

    //账单分期状态
    public static final String LOAN_STAGING_SUM_STATUS_S = "S"; //S 成功
    //泰安租户号
    public static final String UNION_DEFAULT_TENANT_ID = "811";
    //联盟源系统标识
    public static final String UNION_SOURCE_ID = "anyRCS";
    //业务办理机构
    public static final String UNION_BUSN_DEAL_INSTN = "811777777";
    //联盟柜员号
    public static final String UNION_TX_TLR_NO = "811777777X02";
    //联盟文件名
    public static final String UNION_FILE_TYPE_LOAN_SERJAR = "ICCS_ASSET_LOAN_SERIAL";//放款流水
    public static final String UNION_FILE_TYPE_CUSTOMER_INFO = "ICCS_USER_CUSTOMER_INFO";//客户信息
    public static final String UNION_FILE_TYPE_CREDIT_INFO = "ICCS_ASSET_CREDIT_INFO";//授信信息
    public static final String UNION_FILE_TYPE_USER_CONTACT = "ICCS_USER_CONTACT_STATION_INFO";//联系点表
    public static final String UNION_FILE_TYPE_LOAN_PRODUCT = "ICCS_ASSET_LOAN_INVOICE_PRODUCT_INFO";//借据产品信息表
    public static final String UNION_FILE_TYPE_REPAY_SERIAL = "ICCS_ASSET_REPAY_SERIAL";//还款流水
    public static final String UNION_FILE_TYPE_LOAN_INFO = "ICCS_ASSET_LOAN_INVOICE_INFO";//借据信息表
    public static final String UNION_FILE_TYPE_CERTIFICATE_INFO = "ICCS_USER_CERTIFICATE_INFO";//证件文档表
    public static final String UNION_FILE_TYPE_ACCRUED_SERIAL = "ICCS_ACCOUNT_ACCRUED_SERIAL";//计提流水表
    public static final String UNION_FILE_TYPE_CONTRACT_INFO = "ICCS_ASSET_CONTRACT_INFO";//合同信息表
    public static final String UNION_FILE_TYPE_REPAY_PLAN = "ICCS_ASSET_REPAY_PLAN";//还款计划表
    public static final String UNION_FILE_TYPE_ADDRESS = "ICCS_USER_ADDRESS_CONTACT_STATION_INFO";//地址联系点
    public static final String UNION_FILE_TYPE_CUSTOMER_RESOURCE = "ICCS_USER_CUSTOMER_RESOURCE_RELATION";//客户资源关系表
    public static final String UNION_FILE_TYPE_TEL = "ICCS_USER_TEL_CONTACT_STATION_INFO";//电话联系点
    public static final String UNION_FILE_TYPE_PERSONAL_BASIC = "ICCS_USER_PERSONAL_BASIC_INFO";//个人客户
    public static final String UNION_FILE_TYPE_RISK_MANAGEMENT = "ICCS_ASSET_RISK_MANAGEMENT";//风控信息表

    //临商文件名
    public static final String PAPH_FILE_TYPE_ACCOUNTINFO = "JLCLOUD_Net_AccountInfo";//账户信息
    public static final String PAPH_FILE_TYPE_EXTPAYPLAN = "JLCLOUD_Net_ExtPayPlan";//还款流水
    public static final String PAPH_FILE_TYPE_INDINFO = "JLCLOUD_Net_IndInfo";//个人信息
    public static final String PAPH_FILE_TYPE_LCBACKLIST = "JLCLOUD_Net_LcBackList";//还款计划
    public static final String PAPH_FILE_TYPE_SPECBUSINESS = "JLCLOUD_Net_SpecBusiness";//特殊交易
    public static final String LS_FILE_SUFFIX = ".del";//文件后缀
    public static final String LS_FILE_CHARSET = "UTF-8";//文件格式

    //临商二代征信文件名
    public static final String LS_SECOND_FILE_INDINFO  = "JLCLOUD_ICR_INT_INDINFO"; // 个人基本信息
    public static final String LS_SECOND_FILE_RELTINFO  = "JLCLOUD_ICR_INT_RELTINFO"; // 个人关联信息
    public static final String LS_SECOND_FILE_ACCTINFO  = "JLCLOUD_ICR_INT_ACCTINFO"; // 个人借据信息
    public static final String LS_SECOND_FILE_ACCTCTRCT  = "JLCLOUD_ICR_INT_ACCTCTRCT"; // 个人合同信息
    public static final String LS_SECOND_FILE_RLTREPYMTINFO  = "JLCLOUD_ICR_INT_RLTREPYMTINFO"; // 个人相关还款责任人信息
    public static final String LS_SECOND_FILE_PAYPLAN  = "JLCLOUD_ICR_INT_PAYPLAN"; // 个人还款计划
    public static final String LS_SECOND_FILE_LCBACKLIST  = "JLCLOUD_ICR_INT_LCBACKLIST"; // 个人还款流水
    public static final String LS_SECOND_FILE_SPECIBUSINESS  = "JLCLOUD_ICR_INT_SPECIBUSINESS"; // 个人特殊交易信息
    public static final String LS_SECOND_FILE_MOTGARLT  = "JLCLOUD_ICR_INT_MOTGARLT"; // 个人抵质押关联信息表
    public static final String LS_SECOND_FILE_MOTGACTRCT  = "JLCLOUD_ICR_INT_MOTGACTRCT"; // 抵质押合同信息表
    public static final String LS_SECOND_FILE_PROPTINFO  = "JLCLOUD_ICR_INT_PROPTINFO"; // 抵押物信息表
    public static final String LS_SECOND_FILE_CLTALINFO  = "JLCLOUD_ICR_INT_CLTALINFO"; //质物信息表
    public static final String LS_SECOND_FILE_SUFFIX = ".dat";//文件后缀
    public static final String LS_SECOND_FILE_CHARSET = "GBK";//文件格式

    //非应记状态
    public static final String NON_ACCRUALS_FLAG_0 = "0"; //应计
    public static final String NON_ACCRUALS_FLAG_1 = "1"; //非应计


    //额度状态
    public static final String LIMIT_STATUS_0 = "0"; //失效
    public static final String LIMIT_STATUS_1 = "1"; //正常
    public static final String LIMIT_STATUS_2 = "2"; //冻结
    //额度属性
    public static final String USE_MODE_0  = "0";//循环额度
    public static final String USE_MODE_1  = "1";//非循环额度
    public static final String USE_MODE_2  = "2";//一次性(合同级非循环)

    //利率上浮方式（1 百分比，0 固定值）
    public static final String INCREASE_TYPE_0 = "0";
    public static final String INCREASE_TYPE_1 = "1";

    //五级分类
    public static final String LOAN_CLASSIFY_0 = "0"; // 0 = 正常
    public static final String LOAN_CLASSIFY_1 = "1"; //1 = 关注
    public static final String LOAN_CLASSIFY_2 = "2"; //2 = 次级
    public static final String LOAN_CLASSIFY_3 = "3"; //3 = 可疑
    public static final String LOAN_CLASSIFY_4 = "4"; //4 = 损失

    //会计状态
    public static final String TAIAN_ACCOUNTING_PHASE_1 = "1"; //正常
    public static final String TAIAN_ACCOUNTING_PHASE_2 = "2"; //逾期
    public static final String TAIAN_ACCOUNTING_PHASE_3 = "3"; //呆滞
    public static final String TAIAN_ACCOUNTING_PHASE_4 = "4"; //呆帐

    public static final String YES_FLAG = "1"; // 1 是
    public static final String NO_FLAG = "0"; // 0 否


    //泰安五级分类
    public static final String TAIAN_CLASSIFY_1 = "01"; //01 = 正常
    public static final String TAIAN_CLASSIFY_2 = "02"; //02 = 关注
    public static final String TAIAN_CLASSIFY_3 = "03"; //03 = 次级
    public static final String TAIAN_CLASSIFY_4 = "04"; //04 = 可疑
    public static final String TAIAN_CLASSIFY_5 = "05"; //05 = 损失

    //泰安商户ID
    public static final String TAIAN_MERCHANT_ID = "811UC010000000001";

    //个人贷款违约信息
    public static final String LS_BREAK_CONTRACT = "JLCLOUD_CopyBreakContractInfo";
    //个人贷款违约信息分隔符 $
    public static final String LS_BREAK_CONTRACT_SEPARATOR = "$";
    //各种状态（正常／失效）
    public static final String STATUS_0 = "0";//失效
    public static final String STATUS_1 = "1";//正常
    //临安五级分类
    public static final String LS_CLASSIFY_1 = "1"; //1 = 正常
    public static final String LS_CLASSIFY_2 = "2"; //2 = 关注
    public static final String LS_CLASSIFY_3 = "3"; //3 = 次级
    public static final String LS_CLASSIFY_4 = "4"; //4 = 可疑
    public static final String LS_CLASSIFY_5 = "5"; //5 = 损失
    //系统参数
    public static final String SYS_ORGNO = "org_no";
    public static final String SYS_SOURCE_ID = "source_id";
    public static final String SYS_CUST_MG_NO = "cust_mg_no";
    public static final String SYS_CUST_MG_NAME = "cust_mg_name";
    public static final String SYS_PRODUCT_ID = "product_id";
    public static final String TA_SYS_ACLG_NO = "aclg_no";
    public static final String LS_SYS_ACLG_NO_XF = "aclg_no_xf";
    public static final String LS_SYS_ACLG_NO_JY = "aclg_no_jy";
    public static final String SYS_ACLG_NAME = "aclg_name";
    public static final String SYS_MERCHANT_ID = "merchant_id";
    public static final String SYS_OPPT_ACCT_NO = "oppt_acct_no";
    public static final String SYS_OPPT_ACCT_NAME = "oppt_acct_name";
    public static final String SYS_OPPT_BANK_NO = "oppt_bank_no";
    public static final String SYS_OPPT_BANK_NAME = "oppt_bank_name";
    public static final String SYS_REPAY_ACLG_NO = "repay_aclg_no";
    public static final String TA_SYS_ACLG_NO_59201 = "aclg_no_59201";
    public static final String LS_SYS_ACLG_NO_59201_XF = "xf_aclg_no_59201";
    public static final String LS_SYS_ACLG_NO_59201_JY = "jy_aclg_no_59201";
    public static final String TA_SYS_ACLG_NO_59301 = "aclg_no_59301";
    public static final String LS_SYS_ACLG_NO_59301_XF = "xf_aclg_no_59301";
    public static final String LS_SYS_ACLG_NO_59301_JY = "jy_aclg_no_59301";

    //临商金融机构的代码
    public static final String LS_BRANCH_CODE = "B0179S337130029";
    //贷款类型
    public static final String LOAN_TYPE_1 = "1";//现金贷
    public static final String LOAN_TYPE_2 = "2";//消费分期
    public static final String LOAN_TYPE_3 = "3";//账单分期
    public static final String LOAN_TYPE_4 = "4";//信用付
    public static final String LOAN_TYPE_5 = "5";//小额现金贷
    public static final String LOAN_TYPE_6 = "6";//经营性贷款
    //临商租户号
    public static final String UNION_LS_TENANT_ID = "818";

    // 临商征信报送ntfs，业务文件类型代码
    public static final String NTFS_LS_ZXBS = "s_anyrcs_wdgrzxbs";

    // 临商二代征信报送ntfs，业务文件类型代码
    public static final String NTFS_LS_2_ZXBS = "s_anyrcs_zxbs2";

    // 临商征信报送机构号
    public static final String LS_ZX_ORGID = "D10014730H0007";

    // 临商银行天津路支行机构号
    public static final String LS_TIANJIN_ZX_ORGID = "1105107";

    // 平安普惠担保公司
    public static final String PAPH_GUARANTEE_COMPANY = "平安普惠融资担保有限公司";

    // 平安普惠担保公司统一社会信用代码
    public static final String PAPH_GUARANTEE_COMPANY_SOCIAL_CODE = "91320000717881554L";

    // 全量抽取日期
    public static final String REPORTING_ALL_DATE = "reporting_all_date";

}
